Memory devices are typically provided as internal storage areas in the computer. The term memory identifies data storage that comes in the form of integrated circuit chips. In general, memory devices contain an array of memory cells for storing data, row and column decoder circuits coupled to the array of memory cells for accessing the array of memory cells in response to a decoded external address, and an address decoder circuit coupled to the row and column decoder circuits for decoding the external address.
There are several different types of memory. One type is RAM (random-access memory). This is typically used as main memory in a computer environment. RAM refers to read and write memory; that is, you can repeatedly write data into RAM and read data from RAM. This is in contrast to ROM (read-only memory), which generally only permits the user in routine operation to read data already stored on the ROM. Most RAM is volatile, which means that it requires a steady flow of electricity to maintain its contents. As soon as the power is turned off, whatever data was in RAM is lost.
Computers almost always contain a small amount of ROM that holds instructions for starting up the computer. Unlike RAM, ROM generally cannot be written to in routine operation. An EEPROM (electrically erasable programmable read-only memory) is a special type of non-volatile ROM that can be erased by exposing it to an electrical charge. Like other types of ROM, EEPROM is traditionally not as fast as RAM. EEPROM comprise a large number of memory cells having electrically isolated gates (floating gates). Data is stored in the memory cells in the form of charge on the floating gates. Charge is transported to or removed from the floating gates by programming and erase operations, respectively.
Yet another type of non-volatile memory is a Flash memory. A Flash memory is a type of EEPROM that can be erased and reprogrammed in blocks instead of one byte at a time. Many modem PCs have their BIOS stored on a flash memory chip so that it can easily be updated if necessary. Such a BIOS is sometimes called a flash BIOS. Flash memory is also popular in modems because it enables the modem manufacturer to support new protocols as they become standardized.
A typical Flash memory comprises a memory array that includes a large number of memory cells arranged in row and column fashion. Each of the memory cells includes a floating gate field-effect transistor capable of holding a charge. The cells are usually grouped into blocks. Each of the cells within a block can be electrically programmed in a random basis by charging the floating gate. The charge can be removed from the floating gate by a block erase operation. The data in a cell is determined by the presence or absence of the charge in the floating gate.
A synchronous DRAM (SDRAM) is a type of DRAM that can run at much higher clock speeds than conventional DRAM memory. SDRAM synchronizes itself with a CPU's bus and is capable of running at 100 MHZ, about three times faster than conventional FPM (Fast Page Mode) RAM, and about twice as fast EDO (Extended Data Output) DRAM and BEDO (Burst Extended Data Output) DRAM. SDRAMs can be accessed quickly, but are volatile. Many computer systems are designed to operate using SDRAM, but would benefit from non-volatile memory.
In synchronous system memories, an external clock signal drives individual synchronous memory devices in the system, and the synchronous memory devices perform specific data transfer operations, typically in response to the rising edges of the external clock signal. In a typical synchronous memory device, such as an SDRAM, a processor or some other external circuit applies address, data and transfer command information to the synchronous memory device. The synchronous memory device latches the address and command information on a particular rising edge of the external clock signal, and the processor knows that, at a predetermined number of clock cycles later, data may be read from the addressed synchronous memory device. During such data transfers, a clock generator circuit in the synchronous memory device develops an internal clock signal in response to the external clock signal, and the various components within the synchronous memory device are controlled in response to the internal clock signal. The clock generator circuit typically includes a one-shot circuit that operates to develop the internal clock signal in response to the external clock signal.
In modern system memories, the frequency of the external clock signal is ever increasing to enable data transfer to and from the synchronous memory devices at correspondingly faster rates. As the external clock frequency increases, operation of the one-shot circuit becomes more critical due to the corresponding frequency increase of the internal clock signal that must be developed by the one-shot circuit. Delays in recovery of the one-shot circuit may cause the one-shot circuit to miss the next rising edge of the external clock, thus causing a failure of the internal clock.
For the reasons stated above, and for other reasons stated below which will become apparent to those skilled in the art upon reading and understanding the present specification, there is a need in the art for alternate circuits and methods of generating internal clock signals for synchronizing commands in a synchronous memory device.